home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / ien / ien-125 < prev    next >
Text File  |  1988-12-01  |  6KB  |  177 lines

  1.  
  2.  
  3. IEN: 125                                                         V. Cerf
  4.                                                                     ARPA
  5.                                                            December 1979
  6.  
  7.                               PRE-EMPTION
  8.  
  9.  
  10.  
  11. In circuit-switching systems, once a user has acquired a circuit, the
  12. communication bandwidth of that circuit, is dedicated, even if it is not
  13. used.  When the system saturates, additional circuit set-up requests are
  14. blocked.  To allow high precedence users to gain access to circuit
  15. resources, systems such as AUTOVON associate a precedence with each
  16. telephone instrument.  Those instruments with high precedence can
  17. pre-empt circuit resources, causing lower precedence users to be cut
  18. off.
  19.  
  20. In message switching systems such as AUTODIN I, incoming traffic is
  21. stored on disks  (or drums or tape) and processed in order of
  22. precedence.  If a high precedence message is entered into the system, it
  23. is processed and forwarded as quickly as possible.  When the high
  24. precedence message arrives at the destination message switch, it may
  25. pre-empt the use of the output devices on the switch, interrupting the
  26. printing of a lower precedence message.
  27.  
  28. In packet switching systems, there is little or no storage in the
  29. transport system so that precedence has little impact on delay for
  30. processing a packet.  However, when a packet switching system reaches
  31. saturation, it rejects offered traffic.  Precedence can be used in
  32. saturated packet switched systems to sort traffic queued for entry into
  33. the system.
  34.  
  35. In general, precedence is a tool for deciding how to allocate resources
  36. when systems are saturated.  In circuit switched systems, the resource
  37. is circuits; in message switched systems the resource is the message
  38. switch processor; and in packet switching the resource is the packet
  39. switching system itself.
  40.  
  41. This capability can be realized in AUTODIN II without adding any new
  42. mechanisms to TCP (except to make precedence of incoming connection
  43. requests visible to the processes which use TCP).  To allow pre-emptive
  44. access to a particular terminal, the software (i.e., THP) which supports
  45. terminal access to the TAC can be configured so as to always have a
  46. LISTEN posted for that terminal, even if the terminal has a connection
  47. in operation.  For example in the ARPANET TENEX systems, the user TELNET
  48. permits a user to have many connections open at one time - the user can
  49. switch among them at will.  To the extent that this can be done without
  50. violating security requirements, one could imagine a multi-connection
  51. THP which always leaves a LISTEN pending for incoming connection
  52. requests.  If a connection is established, the THP can decide, based on
  53. its precedence, whether to pre-empt any existing connection and to
  54. switch the user to the high precedence one.
  55.  
  56.  
  57.  
  58.                                                                 [Page 1]
  59.  
  60.  
  61.                                                            December 1979
  62. Pre-Emption
  63.  
  64.  
  65.  
  66. If the user is working with several connections of different precedence
  67. at the same time, the THP would close or abort the lowest precedence
  68. connection in favor of the higher precedence pre-empting one.  Then the
  69. THP would do a new LISTEN on that terminal's port in case a higher
  70. priority connection is attempted.
  71.  
  72. One of the reasons for suggesting this model is that processes are the
  73. users of TCP (in general) and that TCP itself cannot cause processes to
  74. be created on behalf of an incoming connection request.  Implementations
  75. could be realized in which TCPs accept incoming connection requests and,
  76. based on the destination port number, create appropriate server
  77. processes.  In terms of pre-empting access to a remote terminal,
  78. however, it seems more sensible to let the process which interfaces the
  79. terminal to the system mediate the pre-emption.  If the terminal is not
  80. connected or is turned off, there is no point in creating a process to
  81. serve the incoming high precedence connection request.
  82.  
  83. For example, suppose a routine FTP is in operation between Host X and
  84. Host Y.  Host Z decides to do a flash-override FTP to Host X.  It opens
  85. a high precedence connection via its TCP and the "SYN" goes out to the
  86. FTP port on Host X.
  87.  
  88. FTP always leaves one LISTEN pending and to pre-empt lower precedence
  89. remote users if it cannot serve one more user (and still keep a LISTEN
  90. pending).  In this way, the FTP is naturally in a state permitting the
  91. high precedence connection request to be properly served, and the FTP
  92. can initiate any cleaning up that is needed to deal with the
  93. pre-emption.
  94.  
  95. In general, this strategy permits the processes using TCP to accommodate
  96. pre-emption in the context of the applications they support.
  97.  
  98. A non-pre-emptable process is one that does not have a LISTEN pending
  99. while it is serving on (or more) users.
  100.  
  101. The actions taken to deal with pre-emption of TCP connections will be
  102. application-process specific and this strategy of a second (or N+1st)
  103. LISTEN is well suited to the situation.
  104.  
  105. Pre-emption may also be necessary at the site initiating a high
  106. precedence connection request.  Suppose there is a high precedence user
  107. who wants to open an FTP connection request from Host Z to Host X.  But
  108. all FTP and/or TCP resources are saturated when this user tries to start
  109. the user FTP process.  In this case, the operating system would have to
  110. know about the precedence of the user and would have to locally pre-empt
  111. resources on his behalf (e.g., by logging out lower precedence users).
  112. This is a system issue, not specific only to TCP.  Implementation of
  113. pre-emption at the source could vary greatly.  Precedence may be
  114. associated with a user or with a terminal.  The TCP implementation may
  115.  
  116.  
  117. [Page 2]                                                                
  118.  
  119.  
  120. December 1979                                                           
  121.                                                              Pre-Emption
  122.  
  123.  
  124.  
  125. locally pre-empt resources to serve high precedence users.  The
  126. operating system may make all pre-emption decisions.
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.                                                                 [Page 3]
  177.